#include <iostream>
#include <string>

using namespace std;

template<class T>
class My_class
{
public:
    T data;
public:
    My_class(/* args */) {}
    template <class T>
    My_class<T>::My_class(T data)
    {
    }
    ~My_class() {}
};

// 在继承 类模板时 需要 指定类模板的类型
class son_1: public My_class<int>
{
public:
    int data;
};


// 在继承 类模板时 需要 指定类模板的类型
template<class T1 , class T2>
class son_3: public My_class<T1>
{
public:
    T2 data;
};


// 在继承 类模板时 需要 指定类模板的类型
template<class T1 >
class son_2: public My_class<T1>
{
public:
    int data;
};


int main(int argc, char const *argv[])
{
    
    son_1 s1;
    son_2<int> s2;

    son_3<int , int > S3;
    
    return 0;
}
